<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::NormalSpaceSampling&lt; PointT, NormalT &gt; 模板类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1_normal_space_sampling.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="#pro-attribs">Protected 属性</a> &#124;
<a href="#pri-types">Private 类型</a> &#124;
<a href="#pri-methods">Private 成员函数</a> &#124;
<a href="#pri-attribs">Private 属性</a> &#124;
<a href="classpcl_1_1_normal_space_sampling-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::NormalSpaceSampling&lt; PointT, NormalT &gt; 模板类 参考</div>  </div>
</div><!--header-->
<div class="contents">

<p><b><a class="el" href="classpcl_1_1_normal_space_sampling.html" title="NormalSpaceSampling samples the input point cloud in the space of normal directions computed at every...">NormalSpaceSampling</a></b> samples the input point cloud in the space of normal directions computed at every point.  
 <a href="classpcl_1_1_normal_space_sampling.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="normal__space_8h_source.html">normal_space.h</a>&gt;</code></p>
<div class="dynheader">
类 pcl::NormalSpaceSampling&lt; PointT, NormalT &gt; 继承关系图:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classpcl_1_1_normal_space_sampling.png" usemap="#pcl::NormalSpaceSampling_3C_20PointT_2C_20NormalT_20_3E_map" alt=""/>
  <map id="pcl::NormalSpaceSampling_3C_20PointT_2C_20NormalT_20_3E_map" name="pcl::NormalSpaceSampling_3C_20PointT_2C_20NormalT_20_3E_map">
<area href="classpcl_1_1_filter_indices.html" title="FilterIndices represents the base class for filters that are about binary point removal...." alt="pcl::FilterIndices&lt; PointT &gt;" shape="rect" coords="0,112,277,136"/>
<area href="classpcl_1_1_filter.html" title="Filter represents the base filter class. All filters must inherit from this interface." alt="pcl::Filter&lt; PointT &gt;" shape="rect" coords="0,56,277,80"/>
<area href="classpcl_1_1_p_c_l_base.html" title="PCL base class. Implements methods that are used by most PCL algorithms." alt="pcl::PCLBase&lt; PointT &gt;" shape="rect" coords="0,0,277,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:a0c51cba59b9b6bae053a12aa803f7f27"><td class="memItemLeft" align="right" valign="top"><a id="a0c51cba59b9b6bae053a12aa803f7f27"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_normal_space_sampling.html">NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:a0c51cba59b9b6bae053a12aa803f7f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae071e341a7765311b5b4826370c3cfab"><td class="memItemLeft" align="right" valign="top"><a id="ae071e341a7765311b5b4826370c3cfab"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_normal_space_sampling.html">NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:ae071e341a7765311b5b4826370c3cfab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_filter_indices"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_filter_indices')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_filter_indices.html">pcl::FilterIndices&lt; PointT &gt;</a></td></tr>
<tr class="memitem:afa28de19aa0b9e1586e67f3cf7d51c52 inherit pub_types_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="afa28de19aa0b9e1586e67f3cf7d51c52"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:afa28de19aa0b9e1586e67f3cf7d51c52 inherit pub_types_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac15dfea019e277e78911673477404fda inherit pub_types_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="ac15dfea019e277e78911673477404fda"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_filter_indices.html">FilterIndices</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:ac15dfea019e277e78911673477404fda inherit pub_types_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a243068e6e2c9fbcfecc7154b7cc7606d inherit pub_types_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="a243068e6e2c9fbcfecc7154b7cc7606d"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_filter_indices.html">FilterIndices</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:a243068e6e2c9fbcfecc7154b7cc7606d inherit pub_types_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a719a1ef5a8fc3b7f4a651a8bae51571b inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a719a1ef5a8fc3b7f4a651a8bae51571b"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_filter.html">Filter</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:a719a1ef5a8fc3b7f4a651a8bae51571b inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01b992cf70e997979d7f653226a60ddd inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a01b992cf70e997979d7f653226a60ddd"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_filter.html">Filter</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:a01b992cf70e997979d7f653226a60ddd inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f1d68bbc5f1f6b852b48b95e4673cfb inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a4f1d68bbc5f1f6b852b48b95e4673cfb"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:a4f1d68bbc5f1f6b852b48b95e4673cfb inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a335eb506b145ec1a09acc945b775246d inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a335eb506b145ec1a09acc945b775246d"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:a335eb506b145ec1a09acc945b775246d inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5796101c9166820fac3a5ca961bde255 inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a5796101c9166820fac3a5ca961bde255"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:a5796101c9166820fac3a5ca961bde255 inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae2f6f6863a73337858b7a7a054eaae4f"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ab84dd662cda89edb882fe5307b2136ea"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ac8326513fad0680b6993e2f1a79a6af4"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae51eae0c7b3e0b7178f4894dff90660a"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesPtr</b></td></tr>
<tr class="separator:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a51771056fb4ab8c448a11157acbe2ee0"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> const  &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesConstPtr</b></td></tr>
<tr class="separator:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a3f18741c93cc45fb7016f3b4fa7cd8c4"><td class="memItemLeft" align="right" valign="top"><a id="a3f18741c93cc45fb7016f3b4fa7cd8c4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a3f18741c93cc45fb7016f3b4fa7cd8c4">NormalSpaceSampling</a> ()</td></tr>
<tr class="memdesc:a3f18741c93cc45fb7016f3b4fa7cd8c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor. <br /></td></tr>
<tr class="separator:a3f18741c93cc45fb7016f3b4fa7cd8c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f26b61de5f528227982d05baf594bb1"><td class="memItemLeft" align="right" valign="top"><a id="a3f26b61de5f528227982d05baf594bb1"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a3f26b61de5f528227982d05baf594bb1">~NormalSpaceSampling</a> ()</td></tr>
<tr class="memdesc:a3f26b61de5f528227982d05baf594bb1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:a3f26b61de5f528227982d05baf594bb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe17caf2368a015790146247d7f9fa2d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#abe17caf2368a015790146247d7f9fa2d">setSample</a> (unsigned int sample)</td></tr>
<tr class="memdesc:abe17caf2368a015790146247d7f9fa2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set number of indices to be sampled.  <a href="classpcl_1_1_normal_space_sampling.html#abe17caf2368a015790146247d7f9fa2d">更多...</a><br /></td></tr>
<tr class="separator:abe17caf2368a015790146247d7f9fa2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61ce4478ede48b9e212e0e46dec0f17f"><td class="memItemLeft" align="right" valign="top"><a id="a61ce4478ede48b9e212e0e46dec0f17f"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a61ce4478ede48b9e212e0e46dec0f17f">getSample</a> () const</td></tr>
<tr class="memdesc:a61ce4478ede48b9e212e0e46dec0f17f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of the internal <em>sample</em> parameter. <br /></td></tr>
<tr class="separator:a61ce4478ede48b9e212e0e46dec0f17f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a8bb0ef5c9482a89a5cc0263f12a1b4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a3a8bb0ef5c9482a89a5cc0263f12a1b4">setSeed</a> (unsigned int seed)</td></tr>
<tr class="memdesc:a3a8bb0ef5c9482a89a5cc0263f12a1b4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set seed of random function.  <a href="classpcl_1_1_normal_space_sampling.html#a3a8bb0ef5c9482a89a5cc0263f12a1b4">更多...</a><br /></td></tr>
<tr class="separator:a3a8bb0ef5c9482a89a5cc0263f12a1b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a061c717a3d48618aa7bd1ae873b73a0b"><td class="memItemLeft" align="right" valign="top"><a id="a061c717a3d48618aa7bd1ae873b73a0b"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a061c717a3d48618aa7bd1ae873b73a0b">getSeed</a> () const</td></tr>
<tr class="memdesc:a061c717a3d48618aa7bd1ae873b73a0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of the internal <em>seed</em> parameter. <br /></td></tr>
<tr class="separator:a061c717a3d48618aa7bd1ae873b73a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3d025c11dfe801bc261fb6d75f8c87ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a3d025c11dfe801bc261fb6d75f8c87ec">setBins</a> (unsigned int binsx, unsigned int binsy, unsigned int binsz)</td></tr>
<tr class="memdesc:a3d025c11dfe801bc261fb6d75f8c87ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of bins in x, y and z direction  <a href="classpcl_1_1_normal_space_sampling.html#a3d025c11dfe801bc261fb6d75f8c87ec">更多...</a><br /></td></tr>
<tr class="separator:a3d025c11dfe801bc261fb6d75f8c87ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad18c33a81628e65ef43544bfd76b8820"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#ad18c33a81628e65ef43544bfd76b8820">getBins</a> (unsigned int &amp;binsx, unsigned int &amp;binsy, unsigned int &amp;binsz) const</td></tr>
<tr class="memdesc:ad18c33a81628e65ef43544bfd76b8820"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of bins in x, y and z direction  <a href="classpcl_1_1_normal_space_sampling.html#ad18c33a81628e65ef43544bfd76b8820">更多...</a><br /></td></tr>
<tr class="separator:ad18c33a81628e65ef43544bfd76b8820"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a752c289d771443346c2db6810516b300"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a752c289d771443346c2db6810516b300">setNormals</a> (const NormalsConstPtr &amp;normals)</td></tr>
<tr class="memdesc:a752c289d771443346c2db6810516b300"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the normals computed on the input point cloud  <a href="classpcl_1_1_normal_space_sampling.html#a752c289d771443346c2db6810516b300">更多...</a><br /></td></tr>
<tr class="separator:a752c289d771443346c2db6810516b300"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a068f587d197dc75df40efe4b93755e46"><td class="memItemLeft" align="right" valign="top"><a id="a068f587d197dc75df40efe4b93755e46"></a>
NormalsConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a068f587d197dc75df40efe4b93755e46">getNormals</a> () const</td></tr>
<tr class="memdesc:a068f587d197dc75df40efe4b93755e46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the normals computed on the input point cloud <br /></td></tr>
<tr class="separator:a068f587d197dc75df40efe4b93755e46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_filter_indices"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_filter_indices')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_filter_indices.html">pcl::FilterIndices&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a72c8696f1bc2e4a6e92172371a45d592 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a72c8696f1bc2e4a6e92172371a45d592">FilterIndices</a> (bool extract_removed_indices=false)</td></tr>
<tr class="memdesc:a72c8696f1bc2e4a6e92172371a45d592 inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="classpcl_1_1_filter_indices.html#a72c8696f1bc2e4a6e92172371a45d592">更多...</a><br /></td></tr>
<tr class="separator:a72c8696f1bc2e4a6e92172371a45d592 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2713c94212077eed36018718a6a11f2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="ad2713c94212077eed36018718a6a11f2"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#ad2713c94212077eed36018718a6a11f2">~FilterIndices</a> ()</td></tr>
<tr class="memdesc:ad2713c94212077eed36018718a6a11f2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty virtual destructor. <br /></td></tr>
<tr class="separator:ad2713c94212077eed36018718a6a11f2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a007e834bf929cb9da0aabb17036bff31 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="a007e834bf929cb9da0aabb17036bff31"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>filter</b> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;output)</td></tr>
<tr class="separator:a007e834bf929cb9da0aabb17036bff31 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbbfa3686df4bdb6cd333a182180970d inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#abbbfa3686df4bdb6cd333a182180970d">filter</a> (std::vector&lt; int &gt; &amp;indices)</td></tr>
<tr class="memdesc:abbbfa3686df4bdb6cd333a182180970d inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the filtering method and returns the filtered point cloud indices.  <a href="classpcl_1_1_filter_indices.html#abbbfa3686df4bdb6cd333a182180970d">更多...</a><br /></td></tr>
<tr class="separator:abbbfa3686df4bdb6cd333a182180970d inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8da0b86892188e59b0deb8d420a682bb inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a8da0b86892188e59b0deb8d420a682bb">setNegative</a> (bool negative)</td></tr>
<tr class="memdesc:a8da0b86892188e59b0deb8d420a682bb inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set whether the regular conditions for points filtering should apply, or the inverted conditions.  <a href="classpcl_1_1_filter_indices.html#a8da0b86892188e59b0deb8d420a682bb">更多...</a><br /></td></tr>
<tr class="separator:a8da0b86892188e59b0deb8d420a682bb inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae596b8085f72489035f63aa26904f2b3 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#ae596b8085f72489035f63aa26904f2b3">getNegative</a> ()</td></tr>
<tr class="memdesc:ae596b8085f72489035f63aa26904f2b3 inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether the regular conditions for points filtering should apply, or the inverted conditions.  <a href="classpcl_1_1_filter_indices.html#ae596b8085f72489035f63aa26904f2b3">更多...</a><br /></td></tr>
<tr class="separator:ae596b8085f72489035f63aa26904f2b3 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21eb00357056c0cc432cd03afa84d08c inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a21eb00357056c0cc432cd03afa84d08c">setKeepOrganized</a> (bool keep_organized)</td></tr>
<tr class="memdesc:a21eb00357056c0cc432cd03afa84d08c inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set whether the filtered points should be kept and set to the value given through <em>setUserFilterValue</em> (default: NaN), or removed from the <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a>, thus potentially breaking its organized structure.  <a href="classpcl_1_1_filter_indices.html#a21eb00357056c0cc432cd03afa84d08c">更多...</a><br /></td></tr>
<tr class="separator:a21eb00357056c0cc432cd03afa84d08c inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9448e925e369d96824a1b333903ddfe2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a9448e925e369d96824a1b333903ddfe2">getKeepOrganized</a> ()</td></tr>
<tr class="memdesc:a9448e925e369d96824a1b333903ddfe2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get whether the filtered points should be kept and set to the value given through <em>setUserFilterValue</em> (default = NaN), or removed from the <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a>, thus potentially breaking its organized structure.  <a href="classpcl_1_1_filter_indices.html#a9448e925e369d96824a1b333903ddfe2">更多...</a><br /></td></tr>
<tr class="separator:a9448e925e369d96824a1b333903ddfe2 inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9456a457b18c28b8dd6b07e970c16eba inherit pub_methods_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a9456a457b18c28b8dd6b07e970c16eba">setUserFilterValue</a> (float value)</td></tr>
<tr class="memdesc:a9456a457b18c28b8dd6b07e970c16eba inherit pub_methods_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a value that the filtered points should be set to instead of removing them. Used in conjunction with <em>setKeepOrganized</em> ().  <a href="classpcl_1_1_filter_indices.html#a9456a457b18c28b8dd6b07e970c16eba">更多...</a><br /></td></tr>
<tr class="separator:a9456a457b18c28b8dd6b07e970c16eba inherit pub_methods_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">Filter</a> (bool extract_removed_indices=false)</td></tr>
<tr class="memdesc:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor.  <a href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">更多...</a><br /></td></tr>
<tr class="separator:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a11163e4d01519df900e6144f705f6980"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a11163e4d01519df900e6144f705f6980">~Filter</a> ()</td></tr>
<tr class="memdesc:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty destructor <br /></td></tr>
<tr class="separator:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ae451ce8a0981e8589812d4f3b135a335"></a>
IndicesConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ae451ce8a0981e8589812d4f3b135a335">getRemovedIndices</a> ()</td></tr>
<tr class="memdesc:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the point indices being removed <br /></td></tr>
<tr class="separator:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#add67775d121c2dd536d3306ef447431e">getRemovedIndices</a> (<a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> &amp;pi)</td></tr>
<tr class="memdesc:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the point indices being removed  <a href="classpcl_1_1_filter.html#add67775d121c2dd536d3306ef447431e">更多...</a><br /></td></tr>
<tr class="separator:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a17115897ca28f6b12950d023958aa641">filter</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;output)</td></tr>
<tr class="memdesc:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the filtering method and returns the filtered dataset in output.  <a href="classpcl_1_1_filter.html#a17115897ca28f6b12950d023958aa641">更多...</a><br /></td></tr>
<tr class="separator:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="af4fbc5eb005057f8a0fc6d60bde595df"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af4fbc5eb005057f8a0fc6d60bde595df">PCLBase</a> ()</td></tr>
<tr class="memdesc:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor. <br /></td></tr>
<tr class="separator:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a7a6dd7a91275d7737cf1b18005b47244"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a7a6dd7a91275d7737cf1b18005b47244">PCLBase</a> (const <a class="el" href="classpcl_1_1_p_c_l_base.html">PCLBase</a> &amp;base)</td></tr>
<tr class="memdesc:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ad5d6846e98e59c37dcc3dc9958d53966"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ad5d6846e98e59c37dcc3dc9958d53966">~PCLBase</a> ()</td></tr>
<tr class="memdesc:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">setInputCloud</a> (const PointCloudConstPtr &amp;cloud)</td></tr>
<tr class="memdesc:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the input dataset  <a href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">更多...</a><br /></td></tr>
<tr class="separator:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a8cd745c4f7a792212f4fc3720b9d46ea"></a>
PointCloudConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a8cd745c4f7a792212f4fc3720b9d46ea">getInputCloud</a> () const</td></tr>
<tr class="memdesc:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the input point cloud dataset. <br /></td></tr>
<tr class="separator:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">setIndices</a> (const IndicesPtr &amp;indices)</td></tr>
<tr class="memdesc:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">更多...</a><br /></td></tr>
<tr class="separator:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">setIndices</a> (const IndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">更多...</a><br /></td></tr>
<tr class="separator:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">setIndices</a> (const PointIndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">更多...</a><br /></td></tr>
<tr class="separator:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">setIndices</a> (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)</td></tr>
<tr class="memdesc:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the indices for the points laying within an interest region of the point cloud.  <a href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">更多...</a><br /></td></tr>
<tr class="separator:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a058753dd4de73d3d0062fe2e452fba3c"></a>
IndicesPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a058753dd4de73d3d0062fe2e452fba3c">getIndices</a> ()</td></tr>
<tr class="memdesc:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="acae187b37230758959572ceb1e6e2045"></a>
IndicesConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acae187b37230758959572ceb1e6e2045">getIndices</a> () const</td></tr>
<tr class="memdesc:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">operator[]</a> (size_t pos) const</td></tr>
<tr class="memdesc:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a> operator[] to shorten code  <a href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">更多...</a><br /></td></tr>
<tr class="separator:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:a08b782f4d7714190f553a9cf19c7bca5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a08b782f4d7714190f553a9cf19c7bca5">applyFilter</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;output)</td></tr>
<tr class="memdesc:a08b782f4d7714190f553a9cf19c7bca5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sample of point indices into a separate <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a>  <a href="classpcl_1_1_normal_space_sampling.html#a08b782f4d7714190f553a9cf19c7bca5">更多...</a><br /></td></tr>
<tr class="separator:a08b782f4d7714190f553a9cf19c7bca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbac957c439d811a28fb338f18164298"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#acbac957c439d811a28fb338f18164298">applyFilter</a> (std::vector&lt; int &gt; &amp;indices)</td></tr>
<tr class="memdesc:acbac957c439d811a28fb338f18164298"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sample of point indices  <a href="classpcl_1_1_normal_space_sampling.html#acbac957c439d811a28fb338f18164298">更多...</a><br /></td></tr>
<tr class="separator:acbac957c439d811a28fb338f18164298"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52eaaaf400653c53644d0f21bdcf8716"><td class="memItemLeft" align="right" valign="top"><a id="a52eaaaf400653c53644d0f21bdcf8716"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>initCompute</b> ()</td></tr>
<tr class="separator:a52eaaaf400653c53644d0f21bdcf8716"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a71040236d2c11da75b715d6d6bf5ba9d"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">getClassName</a> () const</td></tr>
<tr class="memdesc:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a string representation of the name of this class. <br /></td></tr>
<tr class="separator:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">initCompute</a> ()</td></tr>
<tr class="memdesc:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called before starting the actual computation.  <a href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">更多...</a><br /></td></tr>
<tr class="separator:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="afc426c4eebb94b7734d4fa556bff1420"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#afc426c4eebb94b7734d4fa556bff1420">deinitCompute</a> ()</td></tr>
<tr class="memdesc:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called after finishing the actual computation. <br /></td></tr>
<tr class="separator:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected 属性</h2></td></tr>
<tr class="memitem:ac1c03ecd7115ea8a05719236dc86c695"><td class="memItemLeft" align="right" valign="top"><a id="ac1c03ecd7115ea8a05719236dc86c695"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">sample_</a></td></tr>
<tr class="memdesc:ac1c03ecd7115ea8a05719236dc86c695"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of indices that will be returned. <br /></td></tr>
<tr class="separator:ac1c03ecd7115ea8a05719236dc86c695"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51cf268bdfc4c96d86bdac3fda07b8e7"><td class="memItemLeft" align="right" valign="top"><a id="a51cf268bdfc4c96d86bdac3fda07b8e7"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a51cf268bdfc4c96d86bdac3fda07b8e7">seed_</a></td></tr>
<tr class="memdesc:a51cf268bdfc4c96d86bdac3fda07b8e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Random number seed. <br /></td></tr>
<tr class="separator:a51cf268bdfc4c96d86bdac3fda07b8e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1ba1494550d033d95b83c42882b437b"><td class="memItemLeft" align="right" valign="top"><a id="ae1ba1494550d033d95b83c42882b437b"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">binsx_</a></td></tr>
<tr class="memdesc:ae1ba1494550d033d95b83c42882b437b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of bins in x direction. <br /></td></tr>
<tr class="separator:ae1ba1494550d033d95b83c42882b437b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f194b54725ddc4958c59803a3b7598b"><td class="memItemLeft" align="right" valign="top"><a id="a2f194b54725ddc4958c59803a3b7598b"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a></td></tr>
<tr class="memdesc:a2f194b54725ddc4958c59803a3b7598b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of bins in y direction. <br /></td></tr>
<tr class="separator:a2f194b54725ddc4958c59803a3b7598b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7366937ca53f6e835a489d670041e0b2"><td class="memItemLeft" align="right" valign="top"><a id="a7366937ca53f6e835a489d670041e0b2"></a>
unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a></td></tr>
<tr class="memdesc:a7366937ca53f6e835a489d670041e0b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Number of bins in z direction. <br /></td></tr>
<tr class="separator:a7366937ca53f6e835a489d670041e0b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cf7e44bb39cac14129ca8666ccd51f7"><td class="memItemLeft" align="right" valign="top"><a id="a3cf7e44bb39cac14129ca8666ccd51f7"></a>
NormalsConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">input_normals_</a></td></tr>
<tr class="memdesc:a3cf7e44bb39cac14129ca8666ccd51f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">The normals computed at each point in the input cloud <br /></td></tr>
<tr class="separator:a3cf7e44bb39cac14129ca8666ccd51f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_filter_indices"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_filter_indices')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_filter_indices.html">pcl::FilterIndices&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a97854d723ea58d2aa7706db0d086a90f inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="a97854d723ea58d2aa7706db0d086a90f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a97854d723ea58d2aa7706db0d086a90f">negative_</a></td></tr>
<tr class="memdesc:a97854d723ea58d2aa7706db0d086a90f inherit pro_attribs_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">False = normal filter behavior (default), true = inverted behavior. <br /></td></tr>
<tr class="separator:a97854d723ea58d2aa7706db0d086a90f inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45e39a4237dfff1735294cacc243a918 inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="a45e39a4237dfff1735294cacc243a918"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a45e39a4237dfff1735294cacc243a918">keep_organized_</a></td></tr>
<tr class="memdesc:a45e39a4237dfff1735294cacc243a918 inherit pro_attribs_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">False = remove points (default), true = redefine points, keep structure. <br /></td></tr>
<tr class="separator:a45e39a4237dfff1735294cacc243a918 inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009090d4cb34cb01d5906b3d7e12c5db inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memItemLeft" align="right" valign="top"><a id="a009090d4cb34cb01d5906b3d7e12c5db"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter_indices.html#a009090d4cb34cb01d5906b3d7e12c5db">user_filter_value_</a></td></tr>
<tr class="memdesc:a009090d4cb34cb01d5906b3d7e12c5db inherit pro_attribs_classpcl_1_1_filter_indices"><td class="mdescLeft">&#160;</td><td class="mdescRight">The user given value that the filtered point dimensions should be set to (default = NaN). <br /></td></tr>
<tr class="separator:a009090d4cb34cb01d5906b3d7e12c5db inherit pro_attribs_classpcl_1_1_filter_indices"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ae83ccb695ed263cfc64c224210a31936"></a>
IndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a></td></tr>
<tr class="memdesc:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indices of the points that are removed <br /></td></tr>
<tr class="separator:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ad700c7ab56dc82ad8811b87e9f793751"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ad700c7ab56dc82ad8811b87e9f793751">filter_name_</a></td></tr>
<tr class="memdesc:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">The filter name. <br /></td></tr>
<tr class="separator:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a77b899631add791703f5d615f085bede"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a></td></tr>
<tr class="memdesc:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true if we want to return the indices of the removed points. <br /></td></tr>
<tr class="separator:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a09c70d8e06e3fb4f07903fe6f8d67869"></a>
PointCloudConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a></td></tr>
<tr class="memdesc:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">The input point cloud dataset. <br /></td></tr>
<tr class="separator:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="aaee847c8a517ebf365bad2cb182a6626"></a>
IndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a></td></tr>
<tr class="memdesc:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">A pointer to the vector of point indices to use. <br /></td></tr>
<tr class="separator:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ada1eadb824d34ca9206a86343d9760bb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ada1eadb824d34ca9206a86343d9760bb">use_indices_</a></td></tr>
<tr class="memdesc:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true if point indices are used. <br /></td></tr>
<tr class="separator:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="adadb0299f144528020ed558af6879662"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#adadb0299f144528020ed558af6879662">fake_indices_</a></td></tr>
<tr class="memdesc:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">If no set of indices are given, we construct a set of fake indices that mimic the input <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a>. <br /></td></tr>
<tr class="separator:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
Private 类型</h2></td></tr>
<tr class="memitem:ac6c9ef8f449de1ddabc690cab3bedbae"><td class="memItemLeft" align="right" valign="top"><a id="ac6c9ef8f449de1ddabc690cab3bedbae"></a>
typedef <a class="el" href="classpcl_1_1_filter_indices.html">FilterIndices</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;::<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a>&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:ac6c9ef8f449de1ddabc690cab3bedbae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08d00eb44f25e03dc8df742b74adcdf8"><td class="memItemLeft" align="right" valign="top"><a id="a08d00eb44f25e03dc8df742b74adcdf8"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:a08d00eb44f25e03dc8df742b74adcdf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60a1fe230164eed4523e9a89f8a909ae"><td class="memItemLeft" align="right" valign="top"><a id="a60a1fe230164eed4523e9a89f8a909ae"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:a60a1fe230164eed4523e9a89f8a909ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac60fc2432156faa2752c51c0d97f4dff"><td class="memItemLeft" align="right" valign="top"><a id="ac60fc2432156faa2752c51c0d97f4dff"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>NormalsConstPtr</b></td></tr>
<tr class="separator:ac60fc2432156faa2752c51c0d97f4dff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private 成员函数</h2></td></tr>
<tr class="memitem:aa731ae7b60df1fe9f0a27c0b85b9b901"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#aa731ae7b60df1fe9f0a27c0b85b9b901">findBin</a> (const float *normal, unsigned int nbins)</td></tr>
<tr class="memdesc:aa731ae7b60df1fe9f0a27c0b85b9b901"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finds the bin number of the input normal, returns the bin number  <a href="classpcl_1_1_normal_space_sampling.html#aa731ae7b60df1fe9f0a27c0b85b9b901">更多...</a><br /></td></tr>
<tr class="separator:aa731ae7b60df1fe9f0a27c0b85b9b901"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34d3ca316e7f59bc360c4addd0fa9639"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a34d3ca316e7f59bc360c4addd0fa9639">isEntireBinSampled</a> (boost::dynamic_bitset&lt;&gt; &amp;array, unsigned int start_index, unsigned int length)</td></tr>
<tr class="memdesc:a34d3ca316e7f59bc360c4addd0fa9639"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks of the entire bin is sampled, returns true or false  <a href="classpcl_1_1_normal_space_sampling.html#a34d3ca316e7f59bc360c4addd0fa9639">更多...</a><br /></td></tr>
<tr class="separator:a34d3ca316e7f59bc360c4addd0fa9639"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private 属性</h2></td></tr>
<tr class="memitem:a82867f8a247fff23b40b3d5b30b94f70"><td class="memItemLeft" align="right" valign="top"><a id="a82867f8a247fff23b40b3d5b30b94f70"></a>
boost::variate_generator&lt; boost::mt19937, boost::uniform_int&lt; uint32_t &gt; &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_normal_space_sampling.html#a82867f8a247fff23b40b3d5b30b94f70">rng_uniform_distribution_</a></td></tr>
<tr class="memdesc:a82867f8a247fff23b40b3d5b30b94f70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Uniform random distribution. <br /></td></tr>
<tr class="separator:a82867f8a247fff23b40b3d5b30b94f70"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><h3>template&lt;typename PointT, typename NormalT&gt;<br />
class pcl::NormalSpaceSampling&lt; PointT, NormalT &gt;</h3>

<p><b><a class="el" href="classpcl_1_1_normal_space_sampling.html" title="NormalSpaceSampling samples the input point cloud in the space of normal directions computed at every...">NormalSpaceSampling</a></b> samples the input point cloud in the space of normal directions computed at every point. </p>
</div><h2 class="groupheader">成员函数说明</h2>
<a id="a08b782f4d7714190f553a9cf19c7bca5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08b782f4d7714190f553a9cf19c7bca5">&#9670;&nbsp;</a></span>applyFilter() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::applyFilter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;&#160;</td>
          <td class="paramname"><em>output</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sample of point indices into a separate <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a> </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">output</td><td>the resultant point cloud </td></tr>
  </table>
  </dd>
</dl>

<p>实现了 <a class="el" href="classpcl_1_1_filter_indices.html#afd98aa5b5e30e42d81ede249aada8fc9">pcl::FilterIndices&lt; PointT &gt;</a>.</p>
<div class="fragment"><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;{</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;  std::vector&lt;int&gt; indices;</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;  <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_filter_indices.html#a45e39a4237dfff1735294cacc243a918">keep_organized_</a>)</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;  {</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    <span class="keywordtype">bool</span> temp = <a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a>;</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;    <a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    <a class="code" href="classpcl_1_1_normal_space_sampling.html#a08b782f4d7714190f553a9cf19c7bca5">applyFilter</a> (indices);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    <a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a> = temp;</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    output = *<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">int</span> rii = 0; rii &lt; static_cast&lt;int&gt; (<a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>-&gt;size ()); ++rii)  <span class="comment">// rii = removed indices iterator</span></div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;      output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[(*<a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>)[rii]].x = output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[(*removed_indices_)[rii]].y = output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[(*removed_indices_)[rii]].z = <a class="code" href="classpcl_1_1_filter_indices.html#a009090d4cb34cb01d5906b3d7e12c5db">user_filter_value_</a>;</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="keywordflow">if</span> (!pcl_isfinite (<a class="code" href="classpcl_1_1_filter_indices.html#a009090d4cb34cb01d5906b3d7e12c5db">user_filter_value_</a>))</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;      output.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;  }</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;  <span class="keywordflow">else</span></div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;  {</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;    <a class="code" href="classpcl_1_1_normal_space_sampling.html#a08b782f4d7714190f553a9cf19c7bca5">applyFilter</a> (indices);</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <a class="code" href="group__common.html#gaa65b1c8d782e7b776ae682679d2d948f">pcl::copyPointCloud</a> (*<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>, indices, output);</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;  }</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1_filter_html_a77b899631add791703f5d615f085bede"><div class="ttname"><a href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">pcl::Filter::extract_removed_indices_</a></div><div class="ttdeci">bool extract_removed_indices_</div><div class="ttdoc">Set to true if we want to return the indices of the removed points.</div><div class="ttdef"><b>Definition:</b> filter.h:169</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_html_ae83ccb695ed263cfc64c224210a31936"><div class="ttname"><a href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">pcl::Filter::removed_indices_</a></div><div class="ttdeci">IndicesPtr removed_indices_</div><div class="ttdoc">Indices of the points that are removed</div><div class="ttdef"><b>Definition:</b> filter.h:163</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_indices_html_a009090d4cb34cb01d5906b3d7e12c5db"><div class="ttname"><a href="classpcl_1_1_filter_indices.html#a009090d4cb34cb01d5906b3d7e12c5db">pcl::FilterIndices::user_filter_value_</a></div><div class="ttdeci">float user_filter_value_</div><div class="ttdoc">The user given value that the filtered point dimensions should be set to (default = NaN).</div><div class="ttdef"><b>Definition:</b> filter_indices.h:183</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_indices_html_a45e39a4237dfff1735294cacc243a918"><div class="ttname"><a href="classpcl_1_1_filter_indices.html#a45e39a4237dfff1735294cacc243a918">pcl::FilterIndices::keep_organized_</a></div><div class="ttdeci">bool keep_organized_</div><div class="ttdoc">False = remove points (default), true = redefine points, keep structure.</div><div class="ttdef"><b>Definition:</b> filter_indices.h:180</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a08b782f4d7714190f553a9cf19c7bca5"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a08b782f4d7714190f553a9cf19c7bca5">pcl::NormalSpaceSampling::applyFilter</a></div><div class="ttdeci">void applyFilter(PointCloud &amp;output)</div><div class="ttdoc">Sample of point indices into a separate PointCloud</div><div class="ttdef"><b>Definition:</b> normal_space.hpp:73</div></div>
<div class="ttc" id="aclasspcl_1_1_p_c_l_base_html_a09c70d8e06e3fb4f07903fe6f8d67869"><div class="ttname"><a href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">pcl::PCLBase::input_</a></div><div class="ttdeci">PointCloudConstPtr input_</div><div class="ttdoc">The input point cloud dataset.</div><div class="ttdef"><b>Definition:</b> pcl_base.h:150</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a3ca88d8ebf6f4f35acbc31cdfb38aa94"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">pcl::PointCloud::is_dense</a></div><div class="ttdeci">bool is_dense</div><div class="ttdoc">True if no points are invalid (e.g., have NaN or Inf values).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:418</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_af16a62638198313b9c093127c492c884"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">pcl::PointCloud::points</a></div><div class="ttdeci">std::vector&lt; PointT, Eigen::aligned_allocator&lt; PointT &gt; &gt; points</div><div class="ttdoc">The point data.</div><div class="ttdef"><b>Definition:</b> point_cloud.h:410</div></div>
<div class="ttc" id="agroup__common_html_gaa65b1c8d782e7b776ae682679d2d948f"><div class="ttname"><a href="group__common.html#gaa65b1c8d782e7b776ae682679d2d948f">pcl::copyPointCloud</a></div><div class="ttdeci">PCL_EXPORTS void copyPointCloud(const pcl::PCLPointCloud2 &amp;cloud_in, const std::vector&lt; int &gt; &amp;indices, pcl::PCLPointCloud2 &amp;cloud_out)</div><div class="ttdoc">Extract the indices of a given point cloud as a new point cloud</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="acbac957c439d811a28fb338f18164298"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbac957c439d811a28fb338f18164298">&#9670;&nbsp;</a></span>applyFilter() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::applyFilter </td>
          <td>(</td>
          <td class="paramtype">std::vector&lt; int &gt; &amp;&#160;</td>
          <td class="paramname"><em>indices</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Sample of point indices </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">indices</td><td>the resultant point cloud indices </td></tr>
  </table>
  </dd>
</dl>

<p>实现了 <a class="el" href="classpcl_1_1_filter_indices.html#a96adbc8e3d7a076cc00a938260160466">pcl::FilterIndices&lt; PointT &gt;</a>.</p>
<div class="fragment"><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;{</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;  <span class="keywordflow">if</span> (!initCompute ())</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  {</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    indices = *<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a>;</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;  }</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> max_values = (std::min) (<a class="code" href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">sample_</a>, <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">input_normals_</a>-&gt;size ()));</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;  <span class="comment">// Resize output indices to sample size</span></div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;  indices.resize (max_values);</div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;  <a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>-&gt;resize (max_values);</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  </div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;  <span class="comment">// Allocate memory for the histogram of normals. Normals will then be sampled from each bin.</span></div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> n_bins = <a class="code" href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">binsx_</a> * <a class="code" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a> * <a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a>;</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;  <span class="comment">// list&lt;int&gt; holds the indices of points in that bin. Using list to avoid repeated resizing of vectors.</span></div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;  <span class="comment">// Helps when the point cloud is large.</span></div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;  std::vector&lt;std::list &lt;int&gt; &gt; normals_hg;</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;  normals_hg.reserve (n_bins);</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; n_bins; i++)</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    normals_hg.push_back (std::list&lt;int&gt; ());</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160; </div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;  <span class="keywordflow">for</span> (std::vector&lt;int&gt;::const_iterator it = <a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a>-&gt;begin (); it != <a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a>-&gt;end (); ++it)</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  {</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bin_number = <a class="code" href="classpcl_1_1_normal_space_sampling.html#aa731ae7b60df1fe9f0a27c0b85b9b901">findBin</a> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">input_normals_</a>-&gt;points[*it].normal, n_bins);</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;    normals_hg[bin_number].push_back (*it);</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  }</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160; </div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160; </div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  <span class="comment">// Setting up random access for the list created above. Maintaining the iterators to individual elements of the list</span></div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="comment">// in a vector. Using vector now as the size of the list is known.</span></div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  std::vector&lt;std::vector&lt;std::list&lt;int&gt;::iterator&gt; &gt; random_access (normals_hg.size ());</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0; i &lt; normals_hg.size (); i++)</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  {</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    random_access.push_back (std::vector&lt;std::list&lt;int&gt;::iterator&gt; ());</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    random_access[i].resize (normals_hg[i].size ());</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160; </div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0;</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    <span class="keywordflow">for</span> (std::list&lt;int&gt;::iterator itr = normals_hg[i].begin (); itr != normals_hg[i].end (); itr++, j++)</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;      random_access[i][j] = itr;</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;  }</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;  std::vector&lt;unsigned int&gt; start_index (normals_hg.size ());</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;  start_index[0] = 0;</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> prev_index = start_index[0];</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 1; i &lt; normals_hg.size (); i++)</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;  {</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    start_index[i] = prev_index + <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span> (normals_hg[i-1].size ());</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    prev_index = start_index[i];</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;  }</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160; </div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  <span class="comment">// Maintaining flags to check if a point is sampled</span></div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;  boost::dynamic_bitset&lt;&gt; is_sampled_flag (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">input_normals_</a>-&gt;points.size ());</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;  <span class="comment">// Maintaining flags to check if all points in the bin are sampled</span></div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;  boost::dynamic_bitset&lt;&gt; bin_empty_flag (normals_hg.size ());</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = 0;</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;  <span class="keywordflow">while</span> (i &lt; <a class="code" href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">sample_</a>)</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  {</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;    <span class="comment">// Iterating through every bin and picking one point at random, until the required number of points are sampled.</span></div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> j = 0; j &lt; normals_hg.size (); j++)</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    {</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> M = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span> (normals_hg[j].size ());</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;      <span class="keywordflow">if</span> (M == 0 || bin_empty_flag.test (j)) <span class="comment">// bin_empty_flag(i) is set if all points in that bin are sampled..</span></div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160; </div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> pos = 0;</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> random_index = 0;</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160; </div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;      <span class="comment">// Picking up a sample at random from jth bin</span></div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;      <span class="keywordflow">do</span></div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;      {</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        random_index = <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span> ((*rng_uniform_distribution_) () % M);</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        pos = start_index[j] + random_index;</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;      } <span class="keywordflow">while</span> (is_sampled_flag.test (pos));</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160; </div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;      is_sampled_flag.flip (start_index[j] + random_index);</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160; </div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;      <span class="comment">// Checking if all points in bin j are sampled.</span></div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;      <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a34d3ca316e7f59bc360c4addd0fa9639">isEntireBinSampled</a> (is_sampled_flag, start_index[j], <span class="keyword">static_cast&lt;</span><span class="keywordtype">unsigned</span> <span class="keywordtype">int</span><span class="keyword">&gt;</span> (normals_hg[j].size ()))) </div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        bin_empty_flag.flip (j);</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160; </div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;      <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = *(random_access[j][random_index]);</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;      indices[i] = index;</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;      i++;</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;      <span class="keywordflow">if</span> (i == <a class="code" href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">sample_</a>)</div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    }</div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  }</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;  </div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;  <span class="comment">// If we need to return the indices that we haven&#39;t sampled</span></div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;  <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a>)</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;  {</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    std::vector&lt;int&gt; indices_temp = indices;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    std::sort (indices_temp.begin (), indices_temp.end ());</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160; </div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    std::vector&lt;int&gt; all_indices_temp = *<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a>;</div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    std::sort (all_indices_temp.begin (), all_indices_temp.end ());</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    set_difference (all_indices_temp.begin (), all_indices_temp.end (), </div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;                    indices_temp.begin (), indices_temp.end (), </div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;                    inserter (*<a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>, <a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>-&gt;begin ()));</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;  }</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a2f194b54725ddc4958c59803a3b7598b"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">pcl::NormalSpaceSampling::binsy_</a></div><div class="ttdeci">unsigned int binsy_</div><div class="ttdoc">Number of bins in y direction.</div><div class="ttdef"><b>Definition:</b> normal_space.h:162</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a34d3ca316e7f59bc360c4addd0fa9639"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a34d3ca316e7f59bc360c4addd0fa9639">pcl::NormalSpaceSampling::isEntireBinSampled</a></div><div class="ttdeci">bool isEntireBinSampled(boost::dynamic_bitset&lt;&gt; &amp;array, unsigned int start_index, unsigned int length)</div><div class="ttdoc">Checks of the entire bin is sampled, returns true or false</div><div class="ttdef"><b>Definition:</b> normal_space.hpp:99</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a3cf7e44bb39cac14129ca8666ccd51f7"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">pcl::NormalSpaceSampling::input_normals_</a></div><div class="ttdeci">NormalsConstPtr input_normals_</div><div class="ttdoc">The normals computed at each point in the input cloud</div><div class="ttdef"><b>Definition:</b> normal_space.h:167</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a7366937ca53f6e835a489d670041e0b2"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">pcl::NormalSpaceSampling::binsz_</a></div><div class="ttdeci">unsigned int binsz_</div><div class="ttdoc">Number of bins in z direction.</div><div class="ttdef"><b>Definition:</b> normal_space.h:164</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_aa731ae7b60df1fe9f0a27c0b85b9b901"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#aa731ae7b60df1fe9f0a27c0b85b9b901">pcl::NormalSpaceSampling::findBin</a></div><div class="ttdeci">unsigned int findBin(const float *normal, unsigned int nbins)</div><div class="ttdoc">Finds the bin number of the input normal, returns the bin number</div><div class="ttdef"><b>Definition:</b> normal_space.hpp:113</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_ac1c03ecd7115ea8a05719236dc86c695"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">pcl::NormalSpaceSampling::sample_</a></div><div class="ttdeci">unsigned int sample_</div><div class="ttdoc">Number of indices that will be returned.</div><div class="ttdef"><b>Definition:</b> normal_space.h:155</div></div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_ae1ba1494550d033d95b83c42882b437b"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">pcl::NormalSpaceSampling::binsx_</a></div><div class="ttdeci">unsigned int binsx_</div><div class="ttdoc">Number of bins in x direction.</div><div class="ttdef"><b>Definition:</b> normal_space.h:160</div></div>
<div class="ttc" id="aclasspcl_1_1_p_c_l_base_html_aaee847c8a517ebf365bad2cb182a6626"><div class="ttname"><a href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">pcl::PCLBase::indices_</a></div><div class="ttdeci">IndicesPtr indices_</div><div class="ttdoc">A pointer to the vector of point indices to use.</div><div class="ttdef"><b>Definition:</b> pcl_base.h:153</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="aa731ae7b60df1fe9f0a27c0b85b9b901"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa731ae7b60df1fe9f0a27c0b85b9b901">&#9670;&nbsp;</a></span>findBin()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned int <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::findBin </td>
          <td>(</td>
          <td class="paramtype">const float *&#160;</td>
          <td class="paramname"><em>normal</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>nbins</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Finds the bin number of the input normal, returns the bin number </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">normal</td><td>the input normal </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">nbins</td><td>total number of bins </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;{</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bin_number = 0;</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;  <span class="comment">// Holds the bin numbers for direction cosines in x,y,z directions</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> t[3] = {0,0,0};</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  </div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  <span class="comment">// dcos is the direction cosine.</span></div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  <span class="keywordtype">float</span> dcos = 0.0;</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  <span class="keywordtype">float</span> bin_size = 0.0;</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  <span class="comment">// max_cos and min_cos are the maximum and minimum values of cos(theta) respectively</span></div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  <span class="keywordtype">float</span> max_cos = 1.0;</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  <span class="keywordtype">float</span> min_cos = -1.0;</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;<span class="comment">//  dcos = cosf (normal[0]);</span></div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  dcos = normal[0];</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  bin_size = (max_cos - min_cos) / <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">binsx_</a>);</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160; </div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="comment">// Finding bin number for direction cosine in x direction</span></div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> k = 0;</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">float</span> i = min_cos; (i + bin_size) &lt; (max_cos - bin_size); i += bin_size , k++)</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;  {</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    <span class="keywordflow">if</span> (dcos &gt;= i &amp;&amp; dcos &lt;= (i+bin_size))</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    {</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;      <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    }</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  }</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;  t[0] = k;</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">//  dcos = cosf (normal[1]);</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  dcos = normal[1];</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  bin_size = (max_cos - min_cos) / <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a>);</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  <span class="comment">// Finding bin number for direction cosine in y direction</span></div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  k = 0;</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">float</span> i = min_cos; (i + bin_size) &lt; (max_cos - bin_size); i += bin_size , k++)</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  {</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keywordflow">if</span> (dcos &gt;= i &amp;&amp; dcos &lt;= (i+bin_size))</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;    {</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;      <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    }</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  }</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;  t[1] = k;</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;    </div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;<span class="comment">//  dcos = cosf (normal[2]);</span></div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;  dcos = normal[2];</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  bin_size = (max_cos - min_cos) / <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span> (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a>);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160; </div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="comment">// Finding bin number for direction cosine in z direction</span></div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  k = 0;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">float</span> i = min_cos; (i + bin_size) &lt; (max_cos - bin_size); i += bin_size , k++)</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  {</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;    <span class="keywordflow">if</span> (dcos &gt;= i &amp;&amp; dcos &lt;= (i+bin_size))</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    {</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;      <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    }</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;  }</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;  t[2] = k;</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  bin_number = t[0] * (<a class="code" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a>*<a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a>) + t[1] * <a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a> + t[2];</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;  <span class="keywordflow">return</span> bin_number;</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad18c33a81628e65ef43544bfd76b8820"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad18c33a81628e65ef43544bfd76b8820">&#9670;&nbsp;</a></span>getBins()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::getBins </td>
          <td>(</td>
          <td class="paramtype">unsigned int &amp;&#160;</td>
          <td class="paramname"><em>binsx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int &amp;&#160;</td>
          <td class="paramname"><em>binsy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int &amp;&#160;</td>
          <td class="paramname"><em>binsz</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get the number of bins in x, y and z direction </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">binsx</td><td>number of bins in x direction </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">binsy</td><td>number of bins in y direction </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">binsz</td><td>number of bins in z direction </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;      {</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;        binsx = <a class="code" href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">binsx_</a>;</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        binsy = <a class="code" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a>;</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        binsz = <a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a>;</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;      }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a34d3ca316e7f59bc360c4addd0fa9639"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34d3ca316e7f59bc360c4addd0fa9639">&#9670;&nbsp;</a></span>isEntireBinSampled()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::isEntireBinSampled </td>
          <td>(</td>
          <td class="paramtype">boost::dynamic_bitset&lt;&gt; &amp;&#160;</td>
          <td class="paramname"><em>array</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>start_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>length</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Checks of the entire bin is sampled, returns true or false </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">array</td><td>flag which says whether a point is sampled or not </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">start_index</td><td>the index to the first point of the bin in array. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>number of points in the bin </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;{</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;  <span class="keywordtype">bool</span> status = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> i = start_index; i &lt; start_index + length; i++)</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;  {</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    status = status &amp; array.test (i);</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;  }</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;  <span class="keywordflow">return</span> status;</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a3d025c11dfe801bc261fb6d75f8c87ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d025c11dfe801bc261fb6d75f8c87ec">&#9670;&nbsp;</a></span>setBins()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setBins </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>binsx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>binsy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>binsz</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the number of bins in x, y and z direction </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">binsx</td><td>number of bins in x direction </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">binsy</td><td>number of bins in y direction </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">binsz</td><td>number of bins in z direction </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;      {</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;        <a class="code" href="classpcl_1_1_normal_space_sampling.html#ae1ba1494550d033d95b83c42882b437b">binsx_</a> = binsx;</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <a class="code" href="classpcl_1_1_normal_space_sampling.html#a2f194b54725ddc4958c59803a3b7598b">binsy_</a> = binsy;</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <a class="code" href="classpcl_1_1_normal_space_sampling.html#a7366937ca53f6e835a489d670041e0b2">binsz_</a> = binsz;</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;      }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a752c289d771443346c2db6810516b300"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a752c289d771443346c2db6810516b300">&#9670;&nbsp;</a></span>setNormals()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setNormals </td>
          <td>(</td>
          <td class="paramtype">const NormalsConstPtr &amp;&#160;</td>
          <td class="paramname"><em>normals</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set the normals computed on the input point cloud </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">normals</td><td>the normals computed for the input cloud </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;{ <a class="code" href="classpcl_1_1_normal_space_sampling.html#a3cf7e44bb39cac14129ca8666ccd51f7">input_normals_</a> = normals; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="abe17caf2368a015790146247d7f9fa2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe17caf2368a015790146247d7f9fa2d">&#9670;&nbsp;</a></span>setSample()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setSample </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>sample</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set number of indices to be sampled. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sample</td><td>the number of sample indices </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;      { <a class="code" href="classpcl_1_1_normal_space_sampling.html#ac1c03ecd7115ea8a05719236dc86c695">sample_</a> = sample; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a3a8bb0ef5c9482a89a5cc0263f12a1b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a8bb0ef5c9482a89a5cc0263f12a1b4">&#9670;&nbsp;</a></span>setSeed()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT , typename NormalT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_normal_space_sampling.html">pcl::NormalSpaceSampling</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a>, <a class="el" href="structpcl_1_1_normal.html">NormalT</a> &gt;::setSeed </td>
          <td>(</td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>seed</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set seed of random function. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">seed</td><td>the input seed </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;      { <a class="code" href="classpcl_1_1_normal_space_sampling.html#a51cf268bdfc4c96d86bdac3fda07b8e7">seed_</a> = seed; }</div>
<div class="ttc" id="aclasspcl_1_1_normal_space_sampling_html_a51cf268bdfc4c96d86bdac3fda07b8e7"><div class="ttname"><a href="classpcl_1_1_normal_space_sampling.html#a51cf268bdfc4c96d86bdac3fda07b8e7">pcl::NormalSpaceSampling::seed_</a></div><div class="ttdeci">unsigned int seed_</div><div class="ttdoc">Random number seed.</div><div class="ttdef"><b>Definition:</b> normal_space.h:157</div></div>
</div><!-- fragment -->
</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>filters/include/pcl/filters/<a class="el" href="normal__space_8h_source.html">normal_space.h</a></li>
<li>filters/include/pcl/filters/impl/<a class="el" href="normal__space_8hpp_source.html">normal_space.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><a class="el" href="classpcl_1_1_normal_space_sampling.html">NormalSpaceSampling</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
